Method to maintain network address translation (nat) binding

ABSTRACT

A method to maintain Network Address Translation (NAT) binding is provided in the present invention, comprising a mobile terminal proactively initiating a connection request for establishing a link to a computing device via a wireless network, an edge NAT router connected to the wireless network, and other routers; the edge NAT router mapping a source address of a data packet from the mobile terminal to the source address of the edge NAT router, and mapping a destination address of the data packet from the computing device to the destination address of the mobile terminal, and maintaining the two address mapping relationships for a first time interval; the computing device sending a heartbeat packet to the mobile terminal according to a second time interval smaller than the first time interval, so a Time To Live (TTL) set value progressively decreases to 0 as the heartbeat packet reaches the edge NAT router, wherein the heartbeat packet sent by the computing device is used to maintain the mapping relationships of the addresses for the edge NAT router, thereby maintaining the link from the mobile terminal to the computing device, such that the heartbeat packet will not be sent down to the handheld device, thereby reducing as much consumption of the battery life and wireless air-interface resources as possible.

FIELD OF THE INVENTION

The invention relates to a mobile terminal data communication method,and in particular, to maintaining a data link between a mobile terminaland an Internet Protocol (IP) network such as an Internet by maintaininga Network Address Translation (NAT) binding.

DESCRIPTION OF THE RELATED ART

Due to a shortage of public IP addresses and for network safety reasons,the Network Address Translation (NAT) technique has been abundantlyused. NAT allows multiple computers to visit a network with no troubleby sharing one public network IP address. In order for the computers ina private network to visit outside networks, NAT is required to map anIP address and a port number of the private network to an IP address anda port number of the public network, and maintain the mappingrelationship for a period of time. A timer is configured when a NATestablishes a mapping relationship. If there is no data activity beforethe timer reaches a time limit, the mapping relationship will becancelled. Once the binding relationship is cancelled, it will not bepossible to send the data packet from the public network side to thecomputing device in a private network.

Because of the properties associated with NAT, for some dataapplications (such as an IP phone application) which are required tomaintain a real-time data link, the client software in the privatenetwork is required to exchange data packets with the server in thepublic network periodically, in order to renew the NAT binding.Otherwise, the server may not be able to send the IP packets to theclient, causing a service interruption.

In a wireless communication environment, sending data packets to theserver in the public network periodically may require a significantamount of bandwidth and battery power. Therefore, it is proposed in thepresent invention a new method to maintain a mapping relationship for aNAT, thereby minimizing bandwidth requirements for a handheld device andpower consumption of batteries.

FIG. 1 is a diagram illustrating a current system for a mobile terminalto access a network. A handheld device 10 passes through all sorts ofwireless INETs (Internet) 11 and links with the Internet (including anNAT 0 12, an INET 13, an NATN 14, an INET 15 and a computing device 16),and the handheld device 10 performs an IP (Internet Protocol) dataexchange with the computing device 16 in the public network through theInternet. There are one or more NAT devices between the handheld device10 and the computing device 16 in the public network, namely the NAT 0and the NAT N.

When the handheld device 10 in the private network wishes to perform anIP data exchange with the computing device in the public network, thehandheld device 10 is required to initiate a connection request forestablishing an IP link proactively. The NAT devices will establish amapping relationship for the IP addresses and the ports. To simplify theexplanation, the IP addresses and the port numbers in the followingdiscussion are referred to as the addresses. Assuming the privateaddress for the handheld device is IP-p, Port-p, the NAT 0 is mapped tothe address of IP-0, Port-0, and the NAT N is mapped to the address ofIP-n, Port-n. From the perspective from the computing device, theaddress for the handheld device is IP-n, Port-n. From perspective fromthe NAT N, the address for the handheld device is IP-0, Port-0. From theperspective from the NAT 0, the address for the handheld device is IP-p,Port-p.

After the NAT 0 establishes a mapping relationship between IP-p, Port-pand IP-0, Port-0 and the NAT N establishes a mapping relationshipbetween IP-0, Port-0 and IP-n, Port-n, the handheld device may exchangethe IP packets with the computing device freely. However, each NATdevice is configured with a timer for the mapping relationship in orderto minimize the amount of resources consumed. In this regard, when thereis no data activity for a predetermined amount of time (e.g. T0), themapping relationship may be cancelled. The T0 configuration isvendor-dependent and there is no international standard. Generally, T0is around 60 seconds for a UDP (User Datagram Protocol) packet, and T0is slightly longer for a TCP (Transmission Control Protocol) packet.When any one of the NAT devices of the IP link removes the mappingrelationships of the addresses, the computing device will not be able tosend IP packets to the handheld device proactively, and the dataexchange will be terminated.

In the case when NAT exists, a continuous data exchange between thehandheld device 10 and the computing device 16 is required, which iscrucial for real time communications such as the VoIP (voice overInternet Protocol) and the IM (instant messaging). When a UDP/IPtransmission is used, a time interval required for the IP packetexchange between the handheld device and the computing device is within60 seconds. When a TDP/IP transmission is used, the time intervalrequired for the IP packet exchange between the handheld device and thecomputing device may be slightly longer. A large amount of resources maybe consumed when the computing device uses TCP for a transmission.

TTL (Time to Live): A TTL is a standard field in an IP header. When arouter or an NAT device receives an IP packet, the TTL value of the IPpacket is always subtracted by 1 when the IP packet is rerouted. If anetwork device receives an IP packet with a TTL value equal to 0, thenetwork device will discard the IP packet and the IP packet will not bererouted.

According to known methods, a continuous data packets exchange betweenthe handheld device and the computing device is required when it isdesired to maintain a NAT mapping relationship. For a personal computer(PC), this is not a problem. However, for a handheld device, thecontinuous data exchange may consume scarce resources such as batterypower, bandwidth, and wireless air-interface resources. Each time an IPpacket is sent or received, the handheld device is required to turn onthe RF (Radio Frequency) module, activate the antenna, and request forwireless air-interface resources.

BRIEF SUMMARY OF THE INVENTION

The invention is directed to methods to maintain a Network AddressTranslation (NAT) binding, and maintain a data link between a mobileterminal and a computing device in an IP network, such as Internet, bymaintaining a network NAT binding.

Specifically, maintaining the network NAT binding is achieved by thecomputing device sending heartbeat packets to maintain an addressmapping for the NAT binding, wherein the computing device is in anInternet.

The NAT (Network Address Translation) binding method for the presentinvention comprises the following steps.

Initiating, by a mobile terminal, a connection request proactively forestablishing a link to a computing device via a wireless network, anedge NAT router connected to the wireless network, and one or aplurality of other routers.

Mapping a source address of a data packet from the mobile terminal tothe source address of the edge NAT router, and mapping a destinationaddress of the data packet from the computing device to the destinationaddress of the mobile terminal, and maintaining the two address mappingrelationships for a first time interval by the edge NAT router.

Sending, by the computing device, a heartbeat packet to the mobileterminal according to a second time interval which is shorter than thefirst time interval, so that a Time To Live (TTL) set value decreasesprogressively to 0 when the heartbeat packet reaches the edge NATrouter, wherein the heartbeat packet sent by the computing device isused to maintain the address mapping relationships for the edge NATrouter, thereby maintaining the link from the mobile terminal to thecomputing device.

The TTL set value of the heartbeat packet is configured by the computingdevice, and the TTL set value of the heartbeat packet is configured as anumber of hops for the data packet to pass through all routers includingthe edge NAT router to reach the computing device.

The computing device configures the TTL set value of the heartbeatpacket by the following steps:

Detecting a present TTL value V1 when the data packet from the mobileterminal is received.

Acquiring the number of the hops V by subtracting the present TTL valueV1 from a standard TTL value V0 of the data packet, wherein the datapacket is from the mobile terminal.

Configuring the number of the hops as the TTL set value of the heartbeatpacket.

Each of the routers decreases the TTL set value of the heartbeat packetby 1 when the heartbeat packet is rerouted by each of the routers on thelink, the heartbeat packet is discarded since the TTL set value isprogressively decreased to 0 when the data packet reaches the edge NATrouter, thus the heartbeat packet only serves a purpose to maintain theaddress mapping relationships for the edge NAT router, such that theheartbeat packet will not be sent down to the handheld device, therebyreducing as much consumption of the battery life and wirelessair-interface resources as possible.

The computing device configures the TTL set value of the heartbeatpacket by the following steps.

Detecting a present TTL value when the data packet from the mobileterminal is received.

Acquiring the number of the hops V by subtracting the present TTL valueV1 from a standard TTL value V0 of the data packet, wherein the datapacket is from the mobile terminal.

Configuring an initial TTL value tt1 of the heartbeat packet as thenumber of the hops V+an adjustment offset D.

Adjusting the initial TTL value tt1 of the heartbeat packet byperforming a send-response communication with the mobile terminal, untilacquiring a TTL value of the heartbeat packet that the mobile terminalcannot receive the heartbeat packet anymore, and use it as the TTL setvalue.

The send-response communication comprises: sending, by the computingdevice, the heartbeat packet including the initial TTL value (tt1) tothe mobile terminal, the mobile terminal sends a response packet backafter responding; then, the computing device decreases the initial TTLvalue of the heartbeat packet by 1 after receiving the response packetsent back by the mobile terminal; the computing device then sends theheartbeat packet including the initial TTL value decreased by 1 to themobile terminal, the mobile terminal sends the response packet backafter responding; and after that, repeating above operations of thecomputing device sending the heartbeat packet after decreasing the TTLvalue by 1 and the mobile terminal sending the response packet backafter responding, until the computing device decreases the initial TTLvalue progressively to a value that the mobile terminal cannot receivethe heartbeat packet anymore.

The mobile terminal is configured with a response module for respondingand sending back a response packet.

The mobile terminal installs the response module by reading from astorage device or downloading from a network.

The NAT binding maintenance methods for the first embodiment of theinvention comprises the following steps:

Initiating, by a mobile terminal, a connection request for establishinga link to a computing device via a wireless network, an edge NAT routerconnecting to the wireless network, and one or a plurality of otherrouters.

Mapping a source address of a data packet from the mobile terminal tothe source address of the edge NAT router, and mapping a destinationaddress of the data packet from the computing device to the destinationaddress of the mobile terminal, and maintaining the two address mappingrelationships for a first time interval by the edge NAT router.

Sending, by the computing device, a heartbeat packet to the mobileterminal according to a second time interval which is shorter than thefirst time interval, so that a Time To Live (TTL) set valueprogressively decreases to 0 as the heartbeat packet reaches the edgeNAT router, wherein the heartbeat packet sent by the computing device isused to maintain the address mappings for the NAT router, therebymaintaining the link from the mobile terminal to the computing device.

The computing device configures the TTL set value of the heartbeatpacket by following steps.

Detecting a present TTL V1 value when the data packet sent from themobile terminal is received.

Acquiring a number of hops by subtracting the present TTL value V1 froma standard TTL value V0 of the data packet, wherein the data packet isfrom the mobile terminal.

Configuring the number of the hops as the TTL set value of the heartbeatpacket.

The NAT binding maintenance methods for the first embodiment of theinvention comprises the following steps: initiating, by a mobileterminal, a connection request for establishing a link to a computingdevice via a wireless network, an edge NAT router connected to thewireless network, and one or a plurality of other routers; mapping asource address of a data packet of the mobile terminal to the sourceaddress of the edge NAT router, and mapping a destination address of thedata packet of the computing device to the destination address of themobile terminal, and maintaining the two address mapping relationshipsfor a first time interval by the edge NAT router; and sending, by thecomputing device, a heartbeat packet to the mobile terminal according toa second time interval which is shorter than the first time interval, sothat a Time To Live (TTL) set value progressively decreases to 0 as theheartbeat packet reaches the edge NAT router, wherein the heartbeatpacket sent by the computing device is used to maintain the addressmapping relationships for the NAT router, thereby maintaining the linkfrom the mobile terminal to the computing device. The computing deviceconfigures the TTL set value of the heartbeat packet by the followingsteps.

Detecting a present TTL value V1 when the data packet from the mobileterminal is received.

Acquiring a number of hops V by subtracting the present TTL value from astandard TTL value of the data packet, wherein the data packet is fromthe mobile terminal.

Configuring an initial TTL value tt1 of the heartbeat packet as thenumber of the hops+an adjustment offset.

Adjusting the initial TTL value tt1 of the heartbeat packet byperforming a send-response communication with the mobile terminal, untilacquiring a TTL value of the heartbeat packet that the mobile terminalcannot receive the heartbeat packet anymore, and use it as the TTL setvalue.

The send-response communication comprises the computing device sendingthe heartbeat packet including the initial TTL value to the mobileterminal, the mobile terminal sends a response packet back afterresponding; the computing device decreasing the initial TTL value of theheartbeat packet by 1 after receiving the response packet sent back bythe mobile terminal; the computing device sending the heartbeat packetincluding the initial TTL value decreased by 1 to the mobile terminal,the mobile terminal sending the response packet back after responding;after that, repeating above operations of the computing device sendingthe heartbeat packet after decreasing the TTL value by 1 and the mobileterminal sending the response packet back after responding, until thecomputing device decreases the initial TTL value progressively to avalue that the mobile terminal cannot receive the heartbeat packetanymore.

In the above methods, the mobile terminal sends the data packet to thecomputing device according to an interval that is greater than the firsttime interval, thereby the computing device acquires the TTL valueadapted for accidents including a broken adaptation link or a routechange.

Methods provided above may be used to maintain a NAT address, andmapping relationship, and solves the technical issue of the handhelddevice having to receive and send IP packets frequently with currenttechniques.

A detailed description is given in the following embodiments withreference to the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram illustrating a current system for a mobile terminalto access a network;

FIG. 2 is a diagram illustrating a system for realizing the NAT bindingmaintenance method for an embodiment of the invention;

FIG. 3 is a diagram illustrating the NAT binding maintenance method fora first embodiment of the invention;

FIG. 4 is a diagram illustrating the NAT binding maintenance method fora second embodiment of the invention.

DETAILED DESCRIPTION OF THE INVENTION

The principle of the present invention is that after an IP link isestablished between the handheld device and the computing device, thecomputing device sends a specific IP packet (referred to as a “heartbeatpacket” hereafter) periodically (Tp), wherein Tp is smaller than T1 forall of the NAT devices between the handheld device and the computingdevice. The TTL value for the specific heartbeat packet is configured toa specific value which equals to the number of the hops between thehandheld device and the computing device. The heartbeat packet isconfigured in a way that the TTL value becomes 0 as the NAT 0 receivesthe specific heartbeat packet, thus the NAT 0 will discard the heartbeatpacket and not send the heartbeat packet to the handheld device. As aresult, the wireless resource of the handheld device is guaranteed to beprevented from being activated, and the handheld device may save batterypower and bandwidth usage, and wireless air-interface resources. Beforethe T1 timer of the NAT device reaches a time limit, the NAT device mayreceive a heartbeat packet from the computing device to the handhelddevice, such that the NAT device connecting to the wireless Internet andall of the other NAT devices on the link may keep the IP mappingrelationship for the handheld device, thus the computing device 16 maystill send normal IP packets (or the data packets) to the handhelddevice.

The heartbeat packet of the present invention may also be referred to asa NAT binding packet. The format of the NAT binding packet follows thedata packet format for the transmission between the handheld device andthe computing device, with the exception that the TTL set value of theNAT binding packet is configured by the computing device according tothe number of the hops. In another embodiment, a binding identity for aNAT binding may be configured for the heartbeat packet or the NATbinding packet.

No particular process is performed for the TTL value of the normal IPpackets exchanged between the handheld device and the computing devicefor the present invention.

Specifically, the number of the hops is acquired by methods described atbelow.

The computing device requires knowledge of the number of the hopsbetween the handheld device and the computing device when a heartbeatpacket is sent by the computing device, wherein the steps for acquiringthe knowledge are as follows:

1. When the handheld device sends an IP packet to the computing device,the application data (not the IP, TCP or UDP header) may include a newdata attribute, the TTL value V0. The TTL value V0 is a TTL value forthe IP packet sent by the handheld device (e.g. 64).

2. When the IP packet from the handheld device is received by thecomputing device, the computing device detects the IP header of the IPpacket for a present TTL value V1.

3. When the number of the hops between the handheld device and thecomputing device is V0−V1, the TTL value for the heartbeat packet willbe configured as tt1=V0−V1.

Since there is no universal standard for the NAT devices from differentvendors, it is not very reliable to configure the TTL value as V0−V1.Therefore, the following methods may be used to acquire the number ofthe hops:

1. When the handheld device sends an IP packet to the computing devicefor the first time (e.g. registration), the computing device mayinitialize the TTL value of the heartbeat packet as an initial TTL valuett1=V0−V1+D, wherein D may be set to a value around 5, for example, 2˜7.

2. The handheld device sends back a heartbeat packet with a normal TTLvalue (e.g. 64) after the heartbeat packet from the computing device isreceived.

3. If the computing device receives the heartbeat packet from thehandheld device, the computing device will subtract 1 from initial TTLvalue tt1 for the next heartbeat packet.

4. After few rounds of sending the heartbeat packet between thecomputing device and the handheld device, the computing device mayconfigure a precise initial TTL value tt1 to guarantee that the TTLvalue of the heartbeat packet becomes 1 when the heartbeat packetreaches the NAT 0, such that the heartbeat packet will be discarded bythe NAT-0.

In the case of VoIP, IM, or other real time messaging services when NATexists, the handheld device is required to send an IP packet proactivelyto the computing device every 60 seconds in order to maintain themapping relationship for the NAT devices. This is equivalent to aproactive call initiation every 60 seconds, which may consume enormousamounts of the wireless air-interface resources and battery power of thehandheld device.

By using the method of the present invention, the handheld device or themobile device is not required to maintain the mapping relationship forthe NAT devices by sending IP packets periodically. However, due tocomplexity of the wireless data links, the wireless connection for ahandheld device may be disconnected completely without being detected bythe computing device. Therefore, the handheld device is still requiredto send an IP packet to the computing device periodically (e.g. T1) toupdate the IP link. The amount of the time interval T1 is far greaterthan the time interval Tp for the heartbeat packet from the computingdevice. For a UDP/IP connection, Tp may be measured as 20 seconds whileT1 may be measured as 20 minutes. A specific number for Tp and T1 may bedecided by the implementer.

FIG. 2 is a diagram illustrating a system for realizing the NAT bindingmaintenance method for an embodiment of the invention. In the following,the method of the present invention is explained with reference to FIG.2.

In FIG. 2, the mobile terminal 1 may be a GPRS (General Packet RadioService) phone, a TD-SCDMA (Time Division-Synchronous Code DivisionMultiple Access) phone, a WCDMA (Wideband Code Division Multiple Access)phone, a CDMA2000 (Code Division Multiple Access 2000) phone, a WIFI(Wireless Fidelity) phone, or a WiMAX (Worldwide Interoperability forMicrowave Access) phone. The wireless network 2 may be a wirelessnetwork adapted to work with the phones described at the above. Thecomputing device 5 may be a server or a computer in an IP network, andthe mobile terminal 1 may establish a data link to the computing device5 by proactively initiating a connection request to the computing device5. The edge NAT router 3 is a router configured with a NAT program or aNAT module connecting to the wireless network 2. The edge NAT router 3may map the source address of a data packet to its own source address,wherein the data packet is sent by the mobile terminal 1 to thecomputing device 5. The edge NAT router 3 may also map the destinationaddress of the data packet sent from the computing device 5 to thedestination address of the mobile terminal. For example, the edge NATrouter 3 maps the source IP address of a data packet from the mobileterminal 1: TCP source port 192.168.0.3:30000 to its own source IPaddress: TCP source port 172.28.1.5:40001, and maps the destination IPaddress of the data packet from the computing device 5: TCP destinationport 172.28.1.5:40001 to the destination IP address of the mobileterminal 1: TCP destination port 192.168.0.3:30000. The edge NAT router3 maintains the address mapping within a certain period of time, such as60 seconds, wherein the address mapping relationship will be removed bythe NAT program or the NAT module if a data packet is not received fromthe mobile terminal 1 or the computing device 5 within this period oftime, thereby disconnecting the data link from the mobile terminal 1 tothe computing device 5. The data link may be established via several NATrouters 4. Therefore, it is indicated in FIG. 2 the n−1 other routers.According to the system illustrated in FIG. 2, the NAT bindingmaintenance method for the present invention is explained in detail asfollows.

First, the mobile terminal 1 initiates a connection request forestablishing a link to the computing device 5 via the wireless network2, the edge NAT router 3 connecting to the wireless network 2, and oneor a plurality of other routers 4.

The edge NAT router 3 maps the source address (e.g. including source IPaddress and source TCP port) of a data packet from the mobile terminal 1to the source address of the edge NAT router 3, and maps the destinationaddress (e.g. including destination IP address:destination TCP port) ofthe data packet from the computing device 5 to the destination addressof the mobile terminal, and the edge NAT router 3 maintains the mappingrelationship of the 2 addresses for a first time interval T1, such as 60seconds.

According to a second time interval T2 (e.g. 55 seconds), which isshorter than the first time interval T1, the computing device 5 sends aheartbeat packet to the mobile terminal 1, so that a TTL set value ofthe heartbeat packet progressively decreases to 0 as the heartbeatpacket reaches the edge NAT router 3, wherein the heartbeat packet sentby the computing device 5 is used to maintain the address mappingrelationship for the NAT router 3, thereby maintaining the link from themobile terminal 1 to the computing device 5.

The computing device 5 may configure the TTL set value of the heartbeatpacket as a number of hops for the data packet to pass through all therouters including the edge NAT router 3 and reach the computing device5. As indicated in FIG. 2, a data packet is required to pass through nrouters (n−1 routers 4 and an edge NAT router 3) to reach the computingdevice 5, thus the computing device 5 may configure the TTL set value asn. For example, if n equals 10, the TTL set value is also configured tobe 10.

It is to be understood that the TTL set value configured by thecomputing device 5 is the final TTL value configured by the computingdevice. The initial TTL value configured by the computing device 5 inthe following discussion is the initial configured TTL value.

The computing device 5 may configure the TTL value for the heartbeatpacket by the following steps.

When receiving the data packet from the mobile terminal 1, a present TTLvalue V1 (e.g. 54) is detected in the header of the data packet.

The number of the hops (e.g. 10) is acquired by subtracting the presentTTL value V1 (54) from the standard TTL value V0 (e.g. V0=64) of thedata packet from the mobile terminal.

Finally, the number of the hops is configured as the TTL set value ofthe heartbeat packet (e.g. 10).

When the heartbeat packet is rerouted by each router on the link, eachrouter decreases the TTL set value of the heartbeat packet by 1, suchthat the heartbeat packet is discarded when the data packet reaches theedge NAT router 3 due to the TTL set value of the heartbeat packet beingprogressively decreased to 0, thus the heartbeat packet only serves apurpose to maintain the address mapping relationship for the edge NATrouter 3. As described previously, when the data link is establishedfrom the mobile terminal 1 to the computing device 5 via 10 routers, andthe TTL set value of the heartbeat packet sent by the computing device 5is 10, the TTL set value is progressively decreased to 0 by the time theheartbeat packet reaches the edge NAT router 3, and the heartbeat packetis discarded by the edge NAT router 3. However, the data activity forthe heartbeat packet in the router 3 is handled by the router 3, therebyextending the address mapping relationship for the edge NAT router 3 foranother first time interval T1, such as 60 seconds.

The computing device 5 may also configure the TTL set value of theheartbeat packet by using the following steps.

Detecting the present TTL value V1 (e.g. 54) when the data packet fromthe mobile terminal 1 is received

Acquiring the number of the hops V (e.g. 10) by subtracting the presentTTL value V1 from the standard TTL value V0 (e.g. 64) of the data packetfrom the mobile terminal 1.

Configuring the initial TTL value tt1 (e.g. 13) of the heartbeat packetas the number of the hops V+the adjustment offset D.

finally, adjusting the initial TTL value tt1 of the heartbeat packet byperforming a send-response communication with the mobile terminal 1until acquiring a TTL value that the mobile terminal 1 cannot receivethe heartbeat packet anymore, and use it as the TTL set value of theheartbeat packet.

Specifically, the send-response communication between the computingdevice 5 and the mobile terminal 1 comprises the following steps.

The computing device 5 sends a heartbeat packet with the initial TTLvalue tt1 (e.g. 13) to the mobile terminal 1, the mobile terminal 1sends a response packet back after responding to the heartbeat packet.

After the computing device 5 receives the response packet sent back bythe mobile terminal 1, the computing device 5 decreases the initial TTLvalue tt1 of the heartbeat packet by 1 (13−1=12).

Then, the computing device 5 sends the heartbeat packet with the initialTTL value tt1 decreased by 1 (e.g. 12) to the mobile terminal 1, themobile 1 sends a response packet back again after responding;

Subsequently, the above operations of the computing device 5 sending theheartbeat packet after decreasing the TTL value by 1 and the mobileterminal 1 responding by sending a response packet back, until thecomputing device 5 decreases the initial TTL value tt1 progressively toa value where the mobile terminal 1 cannot receive the heartbeat packetanymore (for example, the computing device 5 decreases the TTL value ofthe heartbeat packet several times, until the initial TTL value isprogressively decreased from 13 to 10, and the TTL value of theheartbeat packet becomes 0, TTL=0, by the time the heartbeat packetreaches the edge NAT router 3 and the minus 1 operation is performed tothe heartbeat packet. Therefore, the heartbeat packet may not bererouted to the mobile terminal 1, and the mobile terminal 1 may notreceive the heartbeat packet.

In order for the mobile terminal 1 to be able to respond to theheartbeat packet sent by the computing device 5, the mobile terminal 1should be configured with a response module (not shown in the figure)for responding and sending back a response packet. The mobile terminal 1may install the response module by reading the response module from astorage device or downloading the response module from a network.

FIG. 3 and FIG. 4 are diagrams illustrating the NAT binding maintenancemethod for a first embodiment and a second embodiment of the invention.In the following, the NAT binding maintenance methods for the first andsecond embodiments of the invention are explained with reference to FIG.3 and FIG. 4.

In the first embodiment illustrated in FIG. 3, the mobile terminal 1firstly establishes a data link to the computing device 5 by proactivelyinitiating a connection request to the computing device 5 via thewireless network 2, the edge NAT router 3 connecting to the wirelessnetwork 2, and one or a plurality of other routers 4. Then, the edge NATrouter 3 maps the source address of the data packet from the mobileterminal 1 to the source address of the edge NAT router 3, and maps thedestination address of the data packet from the computing device 5 tothe destination address of the mobile terminal, and the edge NAT router3 maintains the two address mapping relationships for a first timeinterval T1. Then, the computing device 5 sends a heartbeat packet tothe mobile terminal 1 according to a second time interval T2 which isshorter than the first time interval T1, so that the TTL valueprogressively decreases to 0 as the heartbeat packet reaches the edgeNAT router 3, using the heartbeat packet sent by the computing device 5to maintain the address mapping relationship for the edge NAT router 3,thereby the link from the mobile terminal 1 to the computing device 5may be maintained. The computing device 5 may configure the TTL value byusing the following steps.

Detecting the present TTL value V1 when receiving the data packet fromthe mobile terminal 1.

Acquiring the number of the hops by subtracting the present TTL value V1from the standard TTL value V0 of the data packet from the mobileterminal.

Configuring the number of the hops as the TTL value of the heartbeatpacket.

For example, in the first embodiment illustrated in FIG. 3, assume thatthe standard TTL value V0 of the data packet is V0=64, and the datapacket reaches the computing device 5 via the edge NAT router 3 and 19other routers. According to the rule of subtracting the TTL value of thedata packet by 1 when the data packet is rerouted at each router, thecomputing device 5 will detect the present TTL value V1 as 62−20=44 whenthe computing device 5 receives the data packet from the mobile terminal1. Then, the computing device 5 acquires the number of the hops of 20 bysubtracting the present TTL value V1 from the standard TTL value V0(64−44=20). And finally, the computing device 5 configures the TTL setvalue of the heartbeat packet as 20.

In the second embodiment illustrated in FIG. 4, the mobile terminal 1establishes a data link to the computing device 5 by proactivelyinitiating a connection request to the computing device 5 via thewireless network 2, the edge NAT router 3 connecting to the wirelessnetwork 2, and one or a plurality of other routers 4. Then, the edge NATrouter 3 maps the source address of the data packet from the mobileterminal 1 to the source address of the edge NAT router 3, and maps thedestination address of the data packet from the computing device 5 tothe destination address of the mobile terminal, and maintains the twoaddress mapping relationships for a first time interval T1. Thecomputing device 5 sends a heartbeat packet to the mobile terminal 1according to a second time interval T2 which is shorter than the firsttime interval T1, so that a TTL set value of the heartbeat packetprogressively decreases to 0 as the heartbeat packet reaches the edgeNAT router 3, the heartbeat packet sent by the computing device 5 isused to maintain the mapping relationship of the source addresses andthe mapping relationship of the destination addresses for the NAT router3, thereby the link from the mobile terminal 1 to the computing device 5may also be maintained. The computing device 5 configures the TTL setvalue of the heartbeat by using the following steps.

Detecting the present TTL value V1 when receiving the data packet fromthe mobile terminal 1.

Acquiring the number of the hops V by subtracting the present TTL valueV1 from the standard TTL value V0 of the data packet from the mobileterminal.

Configuring the initial TTL value tt1 of the heartbeat packet as thenumber of the hops V+the adjustment offset D.

Adjusting the initial TTL value tt1 of the heartbeat packet byperforming a send-response communication continually with the mobileterminal 1 until acquiring a TTL value that the mobile terminal 1 cannotreceive the heartbeat packet anymore, and use as the TTL set value ofthe heartbeat packet.

The adjustment offset D described previously may be configured as avalue between 2˜7, wherein 5 may have a higher priority.

Specifically, the send-response communication between the computingdevice 5 and the mobile terminal 1 comprises the following steps:

First, the computing device 5 sends the heartbeat packet to the mobileterminal 1, the mobile terminal 1 sends a response packet back afterresponding, wherein the heartbeat packet includes the initial TTL valuett1.

After the computing device 5 receives the response packet sent back bythe mobile terminal 1, the computing device 5 decreases the initial TTLvalue tt1 of the heartbeat packet by 1.

The computing device then sends the heartbeat packet including theinitial TTL value tt1 decreased by 1 to the mobile terminal 1, themobile 1 sends the response packet back again after responding;

repeat above operations of the computing device 5 sending the heartbeatpacket after decreasing the TTL value by 1 and the mobile terminal 1responding and sending response packets back, until the computing device5 decreases the initial TTL value tt1 progressively to a value where themobile terminal 1 cannot receive the heartbeat packet anymore.

For example, the adjustment offset D in FIG. 4 has a value of 5, whenthe computing device 5 receives a first response packet corresponding tothe heartbeat packet from the mobile terminal 1, the computing device 5decreases the TTL value (the initial TTL value) by 1 and sends theheartbeat packet with the TTL value=n+4. When the computing device 5receives the second response packet corresponding to the heartbeatpacket from the mobile terminal 1, the computing device 5 furthersubtracts 1 from the TTL value (the initial TTL value) that has alreadybeen subtracted by 1 and sends the heartbeat packet with the TTLvalue=n+3. When the computing device 5 receives the third responsepacket corresponding to the heartbeat packet from the mobile terminal 1,the computing device 5 further subtracts 1 from the TTL value (theinitial TTL value) that has already been subtracted by 2 and sends theheartbeat packet with the TTL value=n+2. When the computing device 5receives the fourth response packet corresponding to the heartbeatpacket from the mobile terminal 1, the computing device 5 furthersubtracts 1 from the TTL value (the initial TTL value) that has alreadybeen subtracted by 3 and sends the heartbeat packet with the TTLvalue=n+1. When the computing device 5 receives the fifth responsepacket corresponding to the heartbeat packet from the mobile terminal 1,the computing device 5 further subtracts 1 from the TTL value (theinitial TTL value) that has already been subtracted by 4 and sends theheartbeat packet with the TTL value=n. The TTL value is progressivelydecreased to 0 by the time the heartbeat packet reaches the edge NATrouter 3 and the heartbeat packet is discarded. Thus, the mobileterminal 1 cannot respond since the mobile terminal 1 does not receivethe heartbeat packet.

The mobile terminal 1 is configured with a response module forresponding and sending back the response packet, the mobile terminal 1installs the response module by reading from a storage device ordownloading from a network.

When the mobile terminal 1 receives the heartbeat packet from thecomputing equipment, the response module creates and sends back aresponse packet including a NAT binding identity according to a NATbinding identity in the heartbeat packet. The computing equipment 5 mayidentify the response packet according to the NAT binding identity anddecrease the initial TTL value (the TTL value) by 1. The TTL value inthe response packet may be the same as a standard TTL value for anordinary data packet sent by the mobile terminal 1.

Since links may be broken due to accidents and number of routersrerouting the data packets may vary, the mobile terminal 1 may send thedata packet to the computing device 5 according to a time interval thatis greater than the first time interval T1 (e.g. 20 minutes). Thus thecomputing device 5 may repeat the above mentioned steps for NAT bindingto acquire the TTL value of the heartbeat packet adapted for accidentssuch as broken links or change of routing.

While the invention has been described by way of example and in terms ofpreferred embodiment, it is to be understood that the invention is notlimited thereto. To the contrary, it is intended to cover variousmodifications and similar arrangements (as would be apparent to thoseskilled in the art). Therefore, the scope of the appended claims shouldbe accorded the broadest interpretation so as to encompass all suchmodifications and similar arrangements.

1. A NAT (Network Address Translation) binding method for maintaining aNAT binding in a network, comprising: initiating, by a mobile terminal,a connection request proactively for establishing a link to a computingdevice via a wireless network, an edge NAT router connected to thewireless network, and one or a plurality of other routers; mapping asource address of a data packet from the mobile terminal to the sourceaddress of the edge NAT router, and mapping a destination address of thedata packet from the computing device to the destination address of themobile terminal, and maintaining the two address mapping relationshipsfor a first time interval by the edge NAT router; and sending, by thecomputing device, a heartbeat packet to the mobile terminal according toa second time interval which is shorter than the first time interval, sothat a Time To Live (TTL) set value progressively decreases to 0 as theheartbeat packet reaches the edge NAT router, using the heartbeat packetsent by the computing device to maintain the address mappingrelationships for the edge NAT router, thereby maintaining the link fromthe mobile terminal to the computing device.
 2. The NAT binding methodas claimed in claim 1, wherein the TTL set value of the heartbeat packetis configured by the computing device, and the TTL set value of theheartbeat packet is configured as a number of hops for the data packetto pass through all routers including the edge NAT router and reach thecomputing device.
 3. The NAT binding method as claimed in claim 2,wherein the computing device configures the TTL set value of theheartbeat packet by using following steps: detecting a present TTL valuewhen the data packet from the mobile terminal is received; acquiring thenumber of the hops by subtracting the present TTL value from a standardTTL value of the data packet, wherein the data packet is from the mobileterminal; and configuring the number of the hops as the TTL set value ofthe heartbeat packet.
 4. The NAT binding method as claimed in claim 3,wherein each of the routers decreases the TTL set value of the heartbeatpacket by 1 when the heartbeat packet is rerouted by each of the routerson the link, the heartbeat packet is discarded due to the TTL set valueis decreased progressively to 0 when the data packet reaches the edgeNAT router, thus the heartbeat packet only serves a purpose to maintainthe address mapping relationships for the edge NAT router.
 5. The NATbinding method of any of claims 1 to 2, wherein the computing deviceconfigures the TTL set value of the heartbeat packet by the followingsteps: detecting a present TTL value when the data packet from themobile terminal is received; acquiring the number of the hops bysubtracting the present TTL value from a standard TTL value of the datapacket, wherein the data packet is from the mobile terminal; configuringan initial TTL value of the heartbeat packet as an addition result ofthe number of the hops and an adjustment offset; and adjusting theinitial TTL value of the heartbeat packet by performing a send-responsecommunication with the mobile terminal, until acquiring a TTL value ofthe heartbeat packet that the mobile terminal cannot receive theheartbeat packet anymore, and use as the TTL set value.
 6. The NATbinding method as claimed in claim 5, wherein the send-responsecommunication comprises: sending, by the computing device, the heartbeatpacket including the initial TTL value to the mobile terminal, themobile terminal sends a response packet back after responding; thecomputing device decreasing the initial TTL value of the heartbeatpacket by 1 after receiving the response packet sent by the mobileterminal; sending the heartbeat packet to the mobile terminal by thecomputing device, the mobile terminal sends the response packet backafter responding, wherein the heartbeat packet includes the initial TTLvalue decreased by 1; and repeating above operations of the computingdevice sending the heartbeat packet after decreasing the TTL value by 1and the mobile terminal sending the response packet back afterresponding, until the computing device decreases the initial TTL valueprogressively to a value that the mobile terminal cannot receive theheartbeat packet anymore.
 7. A NAT (Network Address Translation) bindingmethod for maintaining a NAT binding in a network, comprising:initiating, by a mobile terminal, a connection request for establishinga link to a computing device via a wireless network, an edge NAT routerconnecting to the wireless network, and one or a plurality of otherrouters; mapping a source address of a data packet from the mobileterminal to the source address of the edge NAT router, and mapping adestination address of the data packet from the computing device to thedestination address of the mobile terminal, and maintaining the twoaddress mapping relationships for a first time interval by the edge NATrouter; sending, by the computing device, a heartbeat packet to themobile terminal according to a second time interval which is shorterthan the first time interval, so that a Time To Live (TTL) set valueprogressively decreases to 0 as the heartbeat packet reaches the edgeNAT router, using the heartbeat packet sent by the computing device tomaintain the address mapping relationships for the NAT router, therebymaintaining the link from the mobile terminal to the computing device;wherein the computing device configures the TTL set value of theheartbeat packet by following steps: detecting a present TTL value whenthe data packet from the mobile terminal is received; acquiring a numberof hops by subtracting the present TTL value from a standard TTL valueof the data packet, wherein the data packet is from the mobile terminal;and configuring the number of the hops as the TTL set value of theheartbeat packet.
 8. The NAT (Network Address Translation) bindingmethod for maintaining a NAT binding in a network, comprising:initiating, by a mobile terminal, a connection request for establishinga link to a computing device via a wireless network, an edge NAT routerconnected to the wireless network, and one or a plurality of otherrouters; mapping a source address of a data packet of the mobileterminal to the source address of the edge NAT router, and mapping adestination address of the data packet of the computing device to thedestination address of the mobile terminal, and maintaining the twoaddress mapping relationships for a first time interval by the edge NATrouter; sending, by the computing device, a heartbeat packet to themobile terminal according to a second time interval which is shorterthan the first time interval, so that a Time To Live (TTL) set valueprogressively decreases to 0 as the heartbeat packet reaches the edgeNAT router, wherein the heartbeat packet sent by the computing device isused to maintain the address mapping relationships for the NAT router,thereby maintaining the link from the mobile terminal to the computingdevice; wherein the computing device configures the TTL set value of theheartbeat packet by the following steps: detecting a present TTL valuewhen the data packet from the mobile terminal is received; acquiring anumber of hops by subtracting the present TTL value from a standard TTLvalue of the data packet, wherein the data packet is from the mobileterminal; configuring an initial TTL value of the heartbeat packet as anaddition result of the number of the hops and an adjustment offset; andadjusting the initial TTL value of the heartbeat packet by performing asend-response communication with the mobile terminal, until acquiring aTTL value of the heartbeat packet that the mobile terminal cannotreceive the heartbeat packet anymore, and used as the TTL set value. 9.The NAT binding method as claimed in claim 8, wherein the send-responsecommunication comprises: the computing device sending the heartbeatpacket including the initial TTL value to the mobile terminal, themobile terminal sends a response packet back after responding; thecomputing device decreasing the initial TTL value of the heartbeatpacket by 1 after receiving the response packet sent back by the mobileterminal; the computing device sending the heartbeat packet includingthe initial TTL value decreased by 1 to the mobile terminal, the mobileterminal sending the response packet back after responding; andrepeating above operations of the computing device sending the heartbeatpacket after decreasing the TTL value by 1 and the mobile terminalsending the response packet back after responding, until the computingdevice decreases the initial TTL value progressively to a value that themobile terminal cannot receive the heartbeat packet anymore.
 10. The NATbinding method as claimed in claim 8, wherein the mobile terminal sendsthe data packet to the computing device according to an interval that isgreater than the first time interval, thereby the computing deviceacquires the TTL value adapted for accidents including an adaptationlink broken or a route change.
 11. A NAT (Network Address Translation)binding method for maintaining a NAT binding by a computing deviceconnected with a mobile terminal via a wireless network, an edge NATrouter connected to the wireless network, and one or a plurality ofother routers between the edge NAT router and the computing device, theNAT binding method comprising: sending a heartbeat packet to the mobileterminal according to a second time interval shorter than a first timeinterval, to maintain address mapping relationships for the mobileterminal in the edge NAT router, thereby maintaining a link between themobile terminal and the computing device, wherein the address mappingrelationships for the mobile terminal are configured to be maintained bythe edge NAT router for the first time interval, and a Time To Live(TTL) set value of the heartbeat packet progressively decreases to 0 asthe heartbeat packet reaches the edge NAT router.
 12. The NAT bindingmethod as claimed in claim 11, further comprising receiving a datapacket from the mobile terminal prior to sending the heartbeat packet,wherein the address mapping relationships for the mobile terminalcomprises information concerning a mapping of a source address of thedata packet to a source address of the edge NAT router and a mapping ofa destination address of the data packet to a destination address of themobile terminal.
 13. The NAT binding method as claimed in claim 12,further comprising configuring the TTL set value of the heartbeat packetto a number of hops for the data packet to pass through the edge NATrouter and the other routers and reach the computing device, prior tosending the heartbeat packet.
 14. The NAT binding method as claimed inclaim 13, further comprising detecting a present TTL value of the datapacket when receiving the data packet, and acquiring the number of thehops by subtracting the present TTL value from a standard TTL value ofthe data packet.
 15. The NAT binding method as claimed in claim 14,wherein each of the other routers decreases the TTL set value of theheartbeat packet by 1 when rerouting the heartbeat packet on the link,and the heartbeat packet is discarded by the edge NAT router in responseto the TTL set value being decreased progressively to 0 when the datapacket reaches the edge NAT router, so that the heartbeat packet onlyserves a purpose to maintain the address mapping relationships for themobile terminal in the edge NAT router.
 16. The NAT binding method asclaimed in claim 12, further comprising: detecting a present TTL valueof the data packet when receiving the data packet; acquiring the numberof the hops by subtracting the present TTL value from a standard TTLvalue of the data packet; configuring an initial TTL value of theheartbeat packet to an addition result of the number of the hops and anadjustment offset; and adjusting the initial TTL value of the heartbeatpacket by performing a send-response communication with the mobileterminal, until acquiring a TTL value of the heartbeat packet that themobile terminal cannot receive the heartbeat packet, thereby using theTTL value as the TTL set value.
 17. The NAT binding method as claimed inclaim 16, wherein the send-response communication comprises: sending, bythe computing device, the heartbeat packet including the initial TTLvalue to the mobile terminal; sending, by the mobile terminal, aresponse packet back to the computing device in response to receivingthe heartbeat packet; decreasing, by the computing device, the initialTTL value of the heartbeat packet by 1 after receiving the responsepacket; and repeating, by the computing device, the steps of sending theheartbeat packet and decreasing the initial TTL value of the heartbeatpacket, until no response packet corresponding to the sent heartbeatpacket is received from the mobile terminal.
 18. A computing device forNAT (Network Address Translation) binding maintenance, wherein thecomputing device is connected with a mobile terminal via a wirelessnetwork, an edge NAT router connected to the wireless network, and oneor a plurality of other routers between the edge NAT router and thecomputing device, the computing device comprising: a processing unit,sending a heartbeat packet to the mobile terminal according to a secondtime interval shorter than a first time interval, to maintain addressmapping relationships for the mobile terminal in the edge NAT router,thereby maintaining a link between the mobile terminal and the computingdevice, wherein the address mapping relationships for the mobileterminal are configured to be maintained by the edge NAT router for thefirst time interval, and a Time To Live (TTL) set value of the heartbeatpacket progressively decreases to 0 as the heartbeat packet reaches theedge NAT router.
 19. The computing device as claimed in claim 18,wherein the processing unit further receives a data packet from themobile terminal prior to sending the heartbeat packet, wherein theaddress mapping relationships for the mobile terminal comprisesinformation concerning a mapping of a source address of the data packetto a source address of the edge NAT router and a mapping of adestination address of the data packet to a destination address of themobile terminal.
 20. The computing device as claimed in claim 19,wherein the processing unit further configures the TTL set value of theheartbeat packet to a number of hops for the data packet to pass throughthe edge NAT router and the other routers and reach the computingdevice, prior to sending the heartbeat packet.
 21. The computing deviceas claimed in claim 20, wherein the processing unit further detects apresent TTL value of the data packet when receiving the data packet, andacquires the number of the hops by subtracting the present TTL valuefrom a standard TTL value of the data packet.
 22. The computing deviceas claimed in claim 21, wherein each of the other routers decreases theTTL set value of the heartbeat packet by 1 when rerouting the heartbeatpacket on the link, and the heartbeat packet is discarded by the edgeNAT router in response to the TTL set value being decreasedprogressively to 0 when the data packet reaches the edge NAT router, sothat the heartbeat packet only serves a purpose to maintain the addressmapping relationships for the mobile terminal in the edge NAT router.23. The computing device as claimed in claim 19, wherein the processingunit further performs the following: detects a present TTL value of thedata packet when receiving the data packet; acquires the number of thehops by subtracting the present TTL value from a standard TTL value ofthe data packet; configures an initial TTL value of the heartbeat packetto an addition result of the number of the hops and an adjustmentoffset; and adjusts the initial TTL value of the heartbeat packet byperforming a send-response communication with the mobile terminal, untilacquiring a TTL value of the heartbeat packet that the mobile terminalcannot receive the heartbeat packet, thereby using the TTL value as theTTL set value.
 24. The as claimed in as claimed in claim 23, wherein thesend-response communication comprises: sending, by the processing unit,the heartbeat packet including the initial TTL value to the mobileterminal; sending, by the mobile terminal, a response packet back to thecomputing device in response to receiving the heartbeat packet;decreasing, by the processing unit, the initial TTL value of theheartbeat packet by 1 after receiving the response packet; andrepeating, by the processing unit, the steps of sending the heartbeatpacket and decreasing the initial TTL value of the heartbeat packet,until no response packet corresponding to the sent heartbeat packet isreceived from the mobile terminal.
 25. A NAT (Network AddressTranslation) binding method for maintaining a NAT binding by a mobileterminal connected to a computing device via a wireless network, an edgeNAT router connected to the wireless network, and one or a plurality ofother routers between the edge NAT router and the computing device, theNAT binding method comprising: preparing a data packet comprising apacket header and application data, wherein the packet header comprisesa standard Time To Live (TTL) value and the application data comprisesan attribute storing the standard TTL value; and sending the data packetto the computing device, so that the computing device configures a TTLset value of a heartbeat packet according to the standard TTL value ofthe data packet, and sends the heartbeat packet to the mobile terminalaccording to a second time interval shorter than a first time intervalin which address mapping relationships for the mobile terminal are to bemaintained by the edge NAT router, wherein the TTL set value of theheartbeat packet progressively decreases to 0 as the heartbeat packetreaches the edge NAT router, thereby maintaining the address mappingrelationships for the mobile terminal in the edge NAT router.
 26. TheNAT binding method as claimed in claim 25, wherein the TTL set value ofthe heartbeat packet is configured to a number of hops for the datapacket to pass through the edge NAT router and the other routers andreach the computing device.
 27. The NAT binding method as claimed inclaim 25, wherein each of the other routers decreases the TTL set valueof the heartbeat packet by 1 when rerouting the heartbeat packet, andthe heartbeat packet is discarded by the edge NAT router in response tothe TTL set value being decreased progressively to 0 when the datapacket reaches the edge NAT router, so that the heartbeat packet onlyserves a purpose to maintain the address mapping relationships for themobile terminal in the edge NAT router.
 28. A mobile terminal for NAT(Network Address Translation) binding maintenance, wherein the mobileterminal is connected to a computing device via a wireless network, anedge NAT router connected to the wireless network, and one or aplurality of other routers between the edge NAT router and the computingdevice, the mobile terminal comprising: a processing unit, preparing adata packet comprising a packet header with a standard Time To Live(TTL) value and comprising application data with an attribute storingthe standard TTL value, and sending the data packet to the computingdevice, so that the computing device configures a TTL set value of aheartbeat packet according to the standard TTL value of the data packet,and sends the heartbeat packet to the mobile terminal according to asecond time interval shorter than a first time interval in which addressmapping relationships for the mobile terminal are to be maintained bythe edge NAT router, wherein the TTL set value of the heartbeat packetprogressively decreases to 0 as the heartbeat packet reaches the edgeNAT router, thereby maintaining the address mapping relationships forthe mobile terminal in the edge NAT router.
 29. The mobile terminal asclaimed in claim 28, wherein the TTL set value of the heartbeat packetis configured to a number of hops for the data packet to pass throughthe edge NAT router and the other routers and reach the computingdevice.
 30. The mobile terminal as claimed in claim 28, wherein each ofthe other routers decreases the TTL set value of the heartbeat packet by1 when rerouting the heartbeat packet, and the heartbeat packet isdiscarded by the edge NAT router in response to the TTL set value beingdecreased progressively to 0 when the data packet reaches the edge NATrouter, so that the heartbeat packet only serves a purpose to maintainthe address mapping relationships for the mobile terminal in the edgeNAT router.